package org.andes.kownledge;

import java.io.InputStream;

import org.andes.help.struct.PsmGraph;

/**
 * Created by IntelliJ IDEA.
 * User: wenfeix
 * Date: 2011-2-1
 * Time: 9:43:53
 * To change this template use File | Settings | File Templates.
 */
public class Enode extends BubbleNode {
    /**(defstruct (Enode (:Print-function Print-Enode))
  (Symbol (gensym "Enode"))		; Unique Gensym symbol.
  ID					; The Equation's Lisp Equation ID
  GIndex				; The index of this node in the Bubblegraph.
  EIndex				; The index within the graphs equations list.
  algebra				; Equation algebra.
  Path					; The solution path used to derive this equation.
  Assumptions				; Assumptions made in this Enode.
  Qnodes				; The quantities included in this equation.
  Marks					; Markings for this equation similar to quantity marks.
  Subeqns				; The subequations present in all of the paths of this PSM.
  subvars				; The subvars present in the psm.
  Entries				; EntryProps that appear in this node's path.
  ) */
   
	private String ID;
    protected int eindex;
    private String   algebra;
    public String getAlgebra(){
        return algebra;
    }
    private String Qnodes;
    private String assumptions;
    private String entriess   ;
    private String subeqns;
    private String subvars;
    private PsmGraph path;
     public PsmGraph getPath() {
        return path;
    }
   


     public void readContent(InputStream S) throws Exception {
    	 Symbol=mg_sr(S);
    	 ID=mg_sr(S);
         gindex=Integer.valueOf(mg_sr(S));
         eindex=Integer.valueOf(mg_sr(S));
        algebra= mg_sr(S);
        path=new PsmGraph();
        path.readContent(S);
        assumptions= mg_sr(S);
         Qnodes= mg_sr(S);
          marks= mg_sr(S);
          subeqns= mg_sr(S);
          subvars= mg_sr(S);
        entriess= mg_sr(S);
         


    }


}
